#include <algorithm>
#include <cstdint>
#include <iostream>
#include <istream>
#include <limits>
#include <vector>

using ll = int64_t;

double ans=0.0;
ll m,n;
std::vector<ll> v;

int main(){
    std::iostream::sync_with_stdio(false);
    std::cin.tie(nullptr);
    std::cout.tie(nullptr);
    std::cin>>m>>n;
    v.resize(n+1);
    for(ll i=1;i<=m;i++){
        v.assign(n+1,0);
        for(ll j=1;j<=n;j++){
            std::cin>>v[j];
            v[j]+=v[j-1];
        }
        double nans=std::numeric_limits<double>::max();
        for(ll j=2;j<v.size()-1;j++){
            for(ll k=j;k<v.size()-1;k++){
                ll len=n-(k-j+1);
                ll sum=v[n]-(v[k]-v[j-1]);
                nans=std::min(
                    nans,
                    double(sum)/double(len)
                );
            }
        }
        ans+=nans;
    }
    std::cout<<ans<<'\n';
}